Lena Voytek [Tue, 24 Mar 2026 13:26:38 +0000 (09:26 -0400)]
Update default datadir config to /var/lib/mariadb.
Last-Update: 2026-03-24
Use /var/lib/mariadb as the default datadir for Debian/Ubuntu to improve
co-installability between MySQL and MariaDB servers.
Last-Update: 2026-03-24
Gbp-Pq: Name set-default-datadir-to-var-lib-mariadb.patch
Aquila Macedo [Mon, 16 Mar 2026 04:09:29 +0000 (01:09 -0300)]
MDEV-39082 mysql-test: use vardir as datadir in collect_mysqld_features
collect_mysqld_features probes mariadbd with --datadir=., which can
point to the installed mysql-test tree.
During this probe, mariadbd may run the datadir case-sensitivity check
and try to create a *.lower-test file there. This is a bad fit when the
test suite is run from a read-only installed path (e.g. /usr/share/...).
Use $opt_vardir as the datadir for this probe instead, so it runs in a
writable location and avoids writes into the installed test tree.
This upstream change stemmed from discovering during AppArmor testing that the
mariadb-test-run is writing in the /usr/share/.. path:
Multiple users reported Akonadi crashing with MariaDB 11.8.6. Downgrading to
11.8.5 fixed it. Reason most likely due to upstream regression as described
in detail in bug reports.
Aquila Macedo [Fri, 16 Jan 2026 00:53:16 +0000 (19:53 -0500)]
Add safe hardening to mariadb.service units
Add low regression systemd hardening directives to mariadb.service and
mariadb@.service to improve 'systemd-analyze security' without touching
the historically-problematic areas (capability bounding /
NoNewPrivileges / PrivateDevices). Refs: MDEV-10404, MDEV-19878,
MDEV-36591, MDEV-36681
Includes kernel/cgroup protections, disables realtime scheduling, locks
personality, and restricts namespace creation (overrideable via drop-in)
This patch should be submitted upstream once proven stable in Debian.
Forwarded: no
Gbp-Pq: Name systemd-hardening-safe-defaults.patch
Otto Kekäläinen [Thu, 27 Nov 2025 00:49:24 +0000 (16:49 -0800)]
Make the new merge_alter test indifferent to extra version info
Modify the test regex to accept any extra version info, just like it
accepts any server version info. The test is supposed to fail on actual
differences in behaviour and server info strings are intentionally
normalized and not regarded.
Without this modification, the test introduced in 9e8e215e would fail
in post-build MTR on "from Debian-log" and in autopkgtest on "from Debian":
main.merge_alter w4 [ fail ]
Test ended at 2025-11-26 22:41:38
CURRENT_TEST: main.merge_alter
/usr/share/mariadb/mariadb-test/main/merge_alter.result 2025-11-13 11:45:29.000000000 +0300
/tmp/tmp.3vGjZWHA79/var/4/log/merge_alter.reject 2025-11-27 01:41:38.523996124 +0300
@@ -10,7 +10,7 @@
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at #
-#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## from Debian created 010909 4:46:40 at startup
ROLLBACK/*!*/;
# at #
#010909 4:46:40 server id # end_log_pos # CRC32 XXX Gtid list []
Result length mismatch
Forwarded: not-needed
Gbp-Pq: Name include-debian-in-test-merge-alter-result.patch
Otto Kekäläinen [Fri, 8 Aug 2025 04:30:51 +0000 (21:30 -0700)]
Suppress native AIO warning introduced in 10.8.3
Upstream a87bb96 introduced a new warning, visible at least on all ppc64el and
s390x builds which makes the post-build mariadb-test-test fail:
[Warning] InnoDB: native AIO failed: falling back to
innodb_use_native_aio=OFF
The case of this is the ci environment only where there is insufficent
fs.aio-max-nr configured. A such we are adding a suppression to the
mtr only. The warning is valuable for users. Upstream MDEV-37411 has
added a io_setup as a warning, which will fail in the CI environment,
so we're pre-emptively suppressing this warning too.
Unlike upstream MariaDB, in Debian we removed libaio in for Linux on
MariaDB 10.6+ in 612630c6 and completely in 1d648d6f. This was re-added
by upstream added a system variable innodb_linux_aio to control, and
also provided automated fallback. As such we're readding it back too.
With liburing still seccomp filterer in container environments having
a libaio fallback is more valuable than the threads implementation of
last resort.
Edited & Updated: Daniel Black <daniel@mariabdb.org>
Upstream rejected this with the conclusion, is that it will start working in
Debian/Salsa/Ubuntu/Launchpad once the Linux kernel is new enough to handle the
I/O calls and fallbacks properly, or once the CI system increases the value of
/proc/sys/fs/aio-max-nr to 1 million or so, to allow multiple parallel MariaDB
servers (as started by mariadb-test-run) each have enough quota for native AIO
to work.
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 17
Server version: 11.8.1-MariaDB-5 from Debian -- Please help get to 10k stars at https://github.com/MariaDB/Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Please help get to 10k stars at https://github.com/MariaDB/Server
Server output if built in git directory:
[Note] Starting MariaDB 11.8.1-MariaDB-5 from Debian source revision 1a9c3debfd6b1b16af4e501d3530b866b85c38a8 server_uid eNAjF8/wvUNM09/mSmh+k3a5o5w= as process 1359
Logs will also show as server output:
mysqld: Version: '11.8.1-MariaDB-5 from Debian' socket: '/run/mysqld/mysqld.sock' port: 3306 -- Please help get to 10k stars at https://github.com/MariaDB/Server
This patch can be dropped if Debian updates to ship
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)
Lena Voytek [Tue, 24 Mar 2026 13:26:38 +0000 (09:26 -0400)]
mariadb (1:11.8.6-5) unstable; urgency=medium
* New mariadb-server installs will now use /var/lib/mariadb as the default
data directory. See NEWS for details.
- Determine whether to use /var/lib/mysql or /var/lib/mariadb during
mariadb-server preinst and postinst.
- On purge, remove /var/lib/mariadb, and /var/lib/mysql only if owned by
mariadb.
- d/p/set-default-datadir-to-var-lib-mariadb.patch: Update compile-time
INSTALL_MYSQLDATADIR_DEB setting to /var/lib/mariadb.
- d/mariadb-server.mariadb.init: Default to /var/lib/mariadb if datadir is
not specified in config.
- d/additions/50-server.cnf: Update default datadir in comment to
/var/lib/mariadb.
- Update autopkgtests to match new data directory expectations.
- Apport: Include /var/lib/mariadb data directory info in report.
- Salsa CI: Confirm correct datadir is in use for each test and add list of
/var/lib/mariadb files as test artifact.
* Use mariadb_upgrade_info/mysql_upgrade_info version files instead of
generated flag files to detect active data directory and downgrade
attempts.
Aquila Macedo [Mon, 16 Mar 2026 04:09:29 +0000 (01:09 -0300)]
MDEV-39082 mysql-test: use vardir as datadir in collect_mysqld_features
collect_mysqld_features probes mariadbd with --datadir=., which can
point to the installed mysql-test tree.
During this probe, mariadbd may run the datadir case-sensitivity check
and try to create a *.lower-test file there. This is a bad fit when the
test suite is run from a read-only installed path (e.g. /usr/share/...).
Use $opt_vardir as the datadir for this probe instead, so it runs in a
writable location and avoids writes into the installed test tree.
This upstream change stemmed from discovering during AppArmor testing that the
mariadb-test-run is writing in the /usr/share/.. path:
Multiple users reported Akonadi crashing with MariaDB 11.8.6. Downgrading to
11.8.5 fixed it. Reason most likely due to upstream regression as described
in detail in bug reports.
Aquila Macedo [Fri, 16 Jan 2026 00:53:16 +0000 (19:53 -0500)]
Add safe hardening to mariadb.service units
Add low regression systemd hardening directives to mariadb.service and
mariadb@.service to improve 'systemd-analyze security' without touching
the historically-problematic areas (capability bounding /
NoNewPrivileges / PrivateDevices). Refs: MDEV-10404, MDEV-19878,
MDEV-36591, MDEV-36681
Includes kernel/cgroup protections, disables realtime scheduling, locks
personality, and restricts namespace creation (overrideable via drop-in)
This patch should be submitted upstream once proven stable in Debian.
Forwarded: no
Gbp-Pq: Name systemd-hardening-safe-defaults.patch
Otto Kekäläinen [Thu, 27 Nov 2025 00:49:24 +0000 (16:49 -0800)]
Make the new merge_alter test indifferent to extra version info
Modify the test regex to accept any extra version info, just like it
accepts any server version info. The test is supposed to fail on actual
differences in behaviour and server info strings are intentionally
normalized and not regarded.
Without this modification, the test introduced in 9e8e215e would fail
in post-build MTR on "from Debian-log" and in autopkgtest on "from Debian":
main.merge_alter w4 [ fail ]
Test ended at 2025-11-26 22:41:38
CURRENT_TEST: main.merge_alter
/usr/share/mariadb/mariadb-test/main/merge_alter.result 2025-11-13 11:45:29.000000000 +0300
/tmp/tmp.3vGjZWHA79/var/4/log/merge_alter.reject 2025-11-27 01:41:38.523996124 +0300
@@ -10,7 +10,7 @@
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at #
-#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## from Debian created 010909 4:46:40 at startup
ROLLBACK/*!*/;
# at #
#010909 4:46:40 server id # end_log_pos # CRC32 XXX Gtid list []
Result length mismatch
Forwarded: not-needed
Gbp-Pq: Name include-debian-in-test-merge-alter-result.patch
Otto Kekäläinen [Fri, 8 Aug 2025 04:30:51 +0000 (21:30 -0700)]
Suppress native AIO warning introduced in 10.8.3
Upstream a87bb96 introduced a new warning, visible at least on all ppc64el and
s390x builds which makes the post-build mariadb-test-test fail:
[Warning] InnoDB: native AIO failed: falling back to
innodb_use_native_aio=OFF
The case of this is the ci environment only where there is insufficent
fs.aio-max-nr configured. A such we are adding a suppression to the
mtr only. The warning is valuable for users. Upstream MDEV-37411 has
added a io_setup as a warning, which will fail in the CI environment,
so we're pre-emptively suppressing this warning too.
Unlike upstream MariaDB, in Debian we removed libaio in for Linux on
MariaDB 10.6+ in 612630c6 and completely in 1d648d6f. This was re-added
by upstream added a system variable innodb_linux_aio to control, and
also provided automated fallback. As such we're readding it back too.
With liburing still seccomp filterer in container environments having
a libaio fallback is more valuable than the threads implementation of
last resort.
Edited & Updated: Daniel Black <daniel@mariabdb.org>
Upstream rejected this with the conclusion, is that it will start working in
Debian/Salsa/Ubuntu/Launchpad once the Linux kernel is new enough to handle the
I/O calls and fallbacks properly, or once the CI system increases the value of
/proc/sys/fs/aio-max-nr to 1 million or so, to allow multiple parallel MariaDB
servers (as started by mariadb-test-run) each have enough quota for native AIO
to work.
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 17
Server version: 11.8.1-MariaDB-5 from Debian -- Please help get to 10k stars at https://github.com/MariaDB/Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Please help get to 10k stars at https://github.com/MariaDB/Server
Server output if built in git directory:
[Note] Starting MariaDB 11.8.1-MariaDB-5 from Debian source revision 1a9c3debfd6b1b16af4e501d3530b866b85c38a8 server_uid eNAjF8/wvUNM09/mSmh+k3a5o5w= as process 1359
Logs will also show as server output:
mysqld: Version: '11.8.1-MariaDB-5 from Debian' socket: '/run/mysqld/mysqld.sock' port: 3306 -- Please help get to 10k stars at https://github.com/MariaDB/Server
This patch can be dropped if Debian updates to ship
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)
Otto Kekäläinen [Thu, 19 Mar 2026 13:13:13 +0000 (13:13 +0000)]
mariadb (1:11.8.6-4) unstable; urgency=medium
* New AppArmor for mariadbd now in 'enforce' mode. See NEWS for details.
* Additional refinement to make the AppArmor and related autopkgtest as
robust as possible:
- Add patch to have mariadb-test-run not write in
/usr/share/mariadb/mariadb-test/ to not violate the AppArmor profile
- Normalize variables 'aria-checkpoint-interval' and 'aria-recover-options'
to documented defaults as they seem to be effect in Ubuntu binaries now,
while Debian binaries seem to default to zero and empty for an unknown
reason.
- Ensure AppArmor diagnostics run even when autopkgtests fail to catch
potential situations where autopkgtests job 'upstream' violated the
AppArmor profile.
- Simplify AppArmor profile, allow 'mariadb' aliases and unify indentation.
- Extend AppArmor profile to cover all easily testable features
(Closes: #1130272).
Multiple users reported Akonadi crashing with MariaDB 11.8.6. Downgrading to
11.8.5 fixed it. Reason most likely due to upstream regression as described
in detail in bug reports.
Aquila Macedo [Fri, 16 Jan 2026 00:53:16 +0000 (19:53 -0500)]
Add safe hardening to mariadb.service units
Add low regression systemd hardening directives to mariadb.service and
mariadb@.service to improve 'systemd-analyze security' without touching
the historically-problematic areas (capability bounding /
NoNewPrivileges / PrivateDevices). Refs: MDEV-10404, MDEV-19878,
MDEV-36591, MDEV-36681
Includes kernel/cgroup protections, disables realtime scheduling, locks
personality, and restricts namespace creation (overrideable via drop-in)
This patch should be submitted upstream once proven stable in Debian.
Forwarded: no
Gbp-Pq: Name systemd-hardening-safe-defaults.patch
Otto Kekäläinen [Thu, 27 Nov 2025 00:49:24 +0000 (16:49 -0800)]
Make the new merge_alter test indifferent to extra version info
Modify the test regex to accept any extra version info, just like it
accepts any server version info. The test is supposed to fail on actual
differences in behaviour and server info strings are intentionally
normalized and not regarded.
Without this modification, the test introduced in 9e8e215e would fail
in post-build MTR on "from Debian-log" and in autopkgtest on "from Debian":
main.merge_alter w4 [ fail ]
Test ended at 2025-11-26 22:41:38
CURRENT_TEST: main.merge_alter
/usr/share/mariadb/mariadb-test/main/merge_alter.result 2025-11-13 11:45:29.000000000 +0300
/tmp/tmp.3vGjZWHA79/var/4/log/merge_alter.reject 2025-11-27 01:41:38.523996124 +0300
@@ -10,7 +10,7 @@
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at #
-#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## from Debian created 010909 4:46:40 at startup
ROLLBACK/*!*/;
# at #
#010909 4:46:40 server id # end_log_pos # CRC32 XXX Gtid list []
Result length mismatch
Forwarded: not-needed
Gbp-Pq: Name include-debian-in-test-merge-alter-result.patch
Otto Kekäläinen [Fri, 8 Aug 2025 04:30:51 +0000 (21:30 -0700)]
Suppress native AIO warning introduced in 10.8.3
Upstream a87bb96 introduced a new warning, visible at least on all ppc64el and
s390x builds which makes the post-build mariadb-test-test fail:
[Warning] InnoDB: native AIO failed: falling back to
innodb_use_native_aio=OFF
The case of this is the ci environment only where there is insufficent
fs.aio-max-nr configured. A such we are adding a suppression to the
mtr only. The warning is valuable for users. Upstream MDEV-37411 has
added a io_setup as a warning, which will fail in the CI environment,
so we're pre-emptively suppressing this warning too.
Unlike upstream MariaDB, in Debian we removed libaio in for Linux on
MariaDB 10.6+ in 612630c6 and completely in 1d648d6f. This was re-added
by upstream added a system variable innodb_linux_aio to control, and
also provided automated fallback. As such we're readding it back too.
With liburing still seccomp filterer in container environments having
a libaio fallback is more valuable than the threads implementation of
last resort.
Edited & Updated: Daniel Black <daniel@mariabdb.org>
Upstream rejected this with the conclusion, is that it will start working in
Debian/Salsa/Ubuntu/Launchpad once the Linux kernel is new enough to handle the
I/O calls and fallbacks properly, or once the CI system increases the value of
/proc/sys/fs/aio-max-nr to 1 million or so, to allow multiple parallel MariaDB
servers (as started by mariadb-test-run) each have enough quota for native AIO
to work.
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 17
Server version: 11.8.1-MariaDB-5 from Debian -- Please help get to 10k stars at https://github.com/MariaDB/Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Please help get to 10k stars at https://github.com/MariaDB/Server
Server output if built in git directory:
[Note] Starting MariaDB 11.8.1-MariaDB-5 from Debian source revision 1a9c3debfd6b1b16af4e501d3530b866b85c38a8 server_uid eNAjF8/wvUNM09/mSmh+k3a5o5w= as process 1359
Logs will also show as server output:
mysqld: Version: '11.8.1-MariaDB-5 from Debian' socket: '/run/mysqld/mysqld.sock' port: 3306 -- Please help get to 10k stars at https://github.com/MariaDB/Server
This patch can be dropped if Debian updates to ship
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)
Otto Kekäläinen [Thu, 19 Feb 2026 08:08:08 +0000 (08:08 +0000)]
mariadb (1:11.8.6-2) unstable; urgency=medium
[ Aquila Macedo ]
* Add systemd hardening patch for MariaDB units (Closes: #1123021)
[ Otto Kekäläinen ]
* Add Lintian override for potentially false new error about embedded
libminizip
* Remove patch for x32 compilation now supposedly fixed upstream in ff4209f
* Update patch statuses and Forwarded fields to match latest
* Fix path to mariadb-server.README in mariadb-secure-install
(Closes: #1127863)
* Add preliminary upstream patch to fix MDEV-38811 that affected Akonadi and
any other use case that relies on 'skip-grant-tables' (Closes: #1127431)
* Add functional AppArmor profile for MariaDB 11.8 but keep it in 'complain'
mode for now to collect real usage experience, and enabling 'enforce' mode
some day in the future when likelihood of unanticipated AppArmor denials
is close to zero (Closes: #875890)
Otto Kekäläinen [Mon, 22 Dec 2025 23:05:30 +0000 (15:05 -0800)]
Fix MariaDB build failure on amd64v3
Test patch from https://jira.mariadb.org/browse/MDEV-38398?focusedCommentId=319851&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-319851
Confirmed to work on Launchpad builds. This will most likely be fixed in next
upstream release MariaDB 11.8.6 by upstream in a more elegant way, and this
patch should be kept in Debian (and Ubuntu) only temporairly.
Otto Kekäläinen [Thu, 27 Nov 2025 00:49:24 +0000 (16:49 -0800)]
Make the new merge_alter test indifferent to extra version info
Modify the test regex to accept any extra version info, just like it
accepts any server version info. The test is supposed to fail on actual
differences in behaviour and server info strings are intentionally
normalized and not regarded.
Without this modification, the test introduced in 9e8e215e would fail
in post-build MTR on "from Debian-log" and in autopkgtest on "from Debian":
main.merge_alter w4 [ fail ]
Test ended at 2025-11-26 22:41:38
CURRENT_TEST: main.merge_alter
/usr/share/mariadb/mariadb-test/main/merge_alter.result 2025-11-13 11:45:29.000000000 +0300
/tmp/tmp.3vGjZWHA79/var/4/log/merge_alter.reject 2025-11-27 01:41:38.523996124 +0300
@@ -10,7 +10,7 @@
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at #
-#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## from Debian created 010909 4:46:40 at startup
ROLLBACK/*!*/;
# at #
#010909 4:46:40 server id # end_log_pos # CRC32 XXX Gtid list []
Result length mismatch
Forwarded: not-needed
Gbp-Pq: Name include-debian-in-test-merge-alter-result.patch
Otto Kekäläinen [Fri, 12 Dec 2025 08:53:33 +0000 (08:53 +0000)]
MDEV-37098 Fix Spider test failures in network-less environments
When running tests in environments without a network interface (such as
containers with `--network=none`), Spider could not retrieve a hardware
address to generate a node ID. This triggered a warning in the server
log, causing MTR to fail the test due to unexpected output:
[Warning] mariadbd: Can't get hardware address with error 2
Fix this by logging Spider hardware address errors to server log only.
This ensures the message is recorded in the server log for debugging but
does not pollute the client output.
It is questionable if this is a problem at all anyway, as when
`my_gethwaddr` fails, the code zeroes out the address buffer, resulting
in a `spider_unique_id` formatted like `-000000000000-PID-`, which is
valid.
When the test is starting up the server with innodb_force_recovery=1,
there will be messages about the LSN being in the future. The current
LSN is expected to be 12338 plus any number of FILE_CHECKPOINT records
(16 bytes each). We have observed anything up to 12402=12338+16*4 in
our CI systems. To be on the safe side, let us allow up to ten records.
Aquila Macedo [Sat, 8 Nov 2025 00:09:05 +0000 (21:09 -0300)]
[PATCH] MDEV-38046 Make func_regexp_pcre tolerant to PCRE2 offset change
PCRE2 10.47 reports the invalid escape in 'A\q' at offset 3 instead of 2.
Update the expected result and add a --replace_regex in the test so the
suite passes with both older and newer PCRE2 versions.
Forwarded: https://jira.mariadb.org/browse/MDEV-38046
(accepted upstream, will be in MariaDB 11.8.6+)
Otto Kekäläinen [Fri, 8 Aug 2025 04:30:51 +0000 (21:30 -0700)]
Suppress native AIO warning introduced in 10.8.3
Upstream a87bb96 introduced a new warning, visible at least on all ppc64el and
s390x builds which makes the post-build mariadb-test-test fail:
[Warning] InnoDB: native AIO failed: falling back to
innodb_use_native_aio=OFF
The case of this is the ci environment only where there is insufficent
fs.aio-max-nr configured. A such we are adding a suppression to the
mtr only. The warning is valuable for users. Upstream MDEV-37411 has
added a io_setup as a warning, which will fail in the CI environment,
so we're pre-emptively suppressing this warning too.
Unlike upstream MariaDB, in Debian we removed libaio in for Linux on
MariaDB 10.6+ in 612630c6 and completely in 1d648d6f. This was re-added
by upstream added a system variable innodb_linux_aio to control, and
also provided automated fallback. As such we're readding it back too.
With liburing still seccomp filterer in container environments having
a libaio fallback is more valuable than the threads implementation of
last resort.
Edited & Updated: Daniel Black <daniel@mariabdb.org>
Upstream rejected this with the conclusion, is that it will start working in
Debian/Salsa/Ubuntu/Launchpad once the Linux kernel is new enough to handle the
I/O calls and fallbacks properly, or once the CI system increases the value of
/proc/sys/fs/aio-max-nr to 1 million or so, to allow multiple parallel MariaDB
servers (as started by mariadb-test-run) each have enough quota for native AIO
to work.
Gbp-Pq: Name MDEV-37411-suppress-new-warning-about-native-aio.patch
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 17
Server version: 11.8.1-MariaDB-5 from Debian -- Please help get to 10k stars at https://github.com/MariaDB/Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Please help get to 10k stars at https://github.com/MariaDB/Server
Server output if built in git directory:
[Note] Starting MariaDB 11.8.1-MariaDB-5 from Debian source revision 1a9c3debfd6b1b16af4e501d3530b866b85c38a8 server_uid eNAjF8/wvUNM09/mSmh+k3a5o5w= as process 1359
Logs will also show as server output:
mysqld: Version: '11.8.1-MariaDB-5 from Debian' socket: '/run/mysqld/mysqld.sock' port: 3306 -- Please help get to 10k stars at https://github.com/MariaDB/Server
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)
Otto Kekäläinen [Tue, 13 Jan 2026 19:03:57 +0000 (19:03 +0000)]
mariadb (1:11.8.5-4) unstable; urgency=medium
[ Otto Kekäläinen ]
* Add tentative upstream patch to fix amd64v3 build issues (MDEV-38398)
* Drop redundant `Priority: optional`
* Update Debian copyright for 2026
* Bump Debian Policy version
[ Aquila Macedo ]
* Drop obsolete library-not-linked-against-libc overrides
* Ship upstream sysusers.d mariadb.conf in mariadb-server (Closes: #1028271)
* Add patch sysusers-lock-mysql-account.patch
* Create mysql via sysusers in postinst, drop preinst adduser handling
* Drop adduser pre-depends, depend on systemd-sysusers provider
* Clarify NIS/YP debconf note for sysusers mysql account creation
* Update all translations to match updated template
Otto Kekäläinen [Thu, 27 Nov 2025 00:49:24 +0000 (16:49 -0800)]
Make the new merge_alter test indifferent to extra version info
Modify the test regex to accept any extra version info, just like it
accepts any server version info. The test is supposed to fail on actual
differences in behaviour and server info strings are intentionally
normalized and not regarded.
Without this modification, the test introduced in 9e8e215e would fail
in post-build MTR on "from Debian-log" and in autopkgtest on "from Debian":
main.merge_alter w4 [ fail ]
Test ended at 2025-11-26 22:41:38
CURRENT_TEST: main.merge_alter
/usr/share/mariadb/mariadb-test/main/merge_alter.result 2025-11-13 11:45:29.000000000 +0300
/tmp/tmp.3vGjZWHA79/var/4/log/merge_alter.reject 2025-11-27 01:41:38.523996124 +0300
@@ -10,7 +10,7 @@
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at #
-#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+#010909 4:46:40 server id # end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## from Debian created 010909 4:46:40 at startup
ROLLBACK/*!*/;
# at #
#010909 4:46:40 server id # end_log_pos # CRC32 XXX Gtid list []
Result length mismatch
Forwarded: not-needed
Gbp-Pq: Name include-debian-in-test-merge-alter-result.patch
Otto Kekäläinen [Fri, 12 Dec 2025 08:53:33 +0000 (08:53 +0000)]
MDEV-37098 Fix Spider test failures in network-less environments
When running tests in environments without a network interface (such as
containers with `--network=none`), Spider could not retrieve a hardware
address to generate a node ID. This triggered a warning in the server
log, causing MTR to fail the test due to unexpected output:
[Warning] mariadbd: Can't get hardware address with error 2
Fix this by logging Spider hardware address errors to server log only.
This ensures the message is recorded in the server log for debugging but
does not pollute the client output.
It is questionable if this is a problem at all anyway, as when
`my_gethwaddr` fails, the code zeroes out the address buffer, resulting
in a `spider_unique_id` formatted like `-000000000000-PID-`, which is
valid.
When the test is starting up the server with innodb_force_recovery=1,
there will be messages about the LSN being in the future. The current
LSN is expected to be 12338 plus any number of FILE_CHECKPOINT records
(16 bytes each). We have observed anything up to 12402=12338+16*4 in
our CI systems. To be on the safe side, let us allow up to ten records.
Aquila Macedo [Sat, 8 Nov 2025 00:09:05 +0000 (21:09 -0300)]
[PATCH] MDEV-38046 Make func_regexp_pcre tolerant to PCRE2 offset change
PCRE2 10.47 reports the invalid escape in 'A\q' at offset 3 instead of 2.
Update the expected result and add a --replace_regex in the test so the
suite passes with both older and newer PCRE2 versions.
Forwarded: https://jira.mariadb.org/browse/MDEV-38046
(accepted upstream, will be in MariaDB 11.8.6+)
Otto Kekäläinen [Fri, 8 Aug 2025 04:30:51 +0000 (21:30 -0700)]
Suppress native AIO warning introduced in 10.8.3
Upstream a87bb96 introduced a new warning, visible at least on all ppc64el and
s390x builds which makes the post-build mariadb-test-test fail:
[Warning] InnoDB: native AIO failed: falling back to
innodb_use_native_aio=OFF
The case of this is the ci environment only where there is insufficent
fs.aio-max-nr configured. A such we are adding a suppression to the
mtr only. The warning is valuable for users. Upstream MDEV-37411 has
added a io_setup as a warning, which will fail in the CI environment,
so we're pre-emptively suppressing this warning too.
Unlike upstream MariaDB, in Debian we removed libaio in for Linux on
MariaDB 10.6+ in 612630c6 and completely in 1d648d6f. This was re-added
by upstream added a system variable innodb_linux_aio to control, and
also provided automated fallback. As such we're readding it back too.
With liburing still seccomp filterer in container environments having
a libaio fallback is more valuable than the threads implementation of
last resort.
Edited & Updated: Daniel Black <daniel@mariabdb.org>
Upstream rejected this with the conclusion, is that it will start working in
Debian/Salsa/Ubuntu/Launchpad once the Linux kernel is new enough to handle the
I/O calls and fallbacks properly, or once the CI system increases the value of
/proc/sys/fs/aio-max-nr to 1 million or so, to allow multiple parallel MariaDB
servers (as started by mariadb-test-run) each have enough quota for native AIO
to work.
Gbp-Pq: Name MDEV-37411-suppress-new-warning-about-native-aio.patch
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 17
Server version: 11.8.1-MariaDB-5 from Debian -- Please help get to 10k stars at https://github.com/MariaDB/Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Please help get to 10k stars at https://github.com/MariaDB/Server
Server output if built in git directory:
[Note] Starting MariaDB 11.8.1-MariaDB-5 from Debian source revision 1a9c3debfd6b1b16af4e501d3530b866b85c38a8 server_uid eNAjF8/wvUNM09/mSmh+k3a5o5w= as process 1359
Logs will also show as server output:
mysqld: Version: '11.8.1-MariaDB-5 from Debian' socket: '/run/mysqld/mysqld.sock' port: 3306 -- Please help get to 10k stars at https://github.com/MariaDB/Server
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)
Otto Kekäläinen [Tue, 16 Dec 2025 04:00:00 +0000 (20:00 -0800)]
mariadb (1:11.8.5-3) unstable; urgency=medium
* MDEV-23538: Rename mariadb.pc to mariadb-server-embedded.pc to avoid
confusion, as well as sync other misc Debian packaging improvements from
upstream
* Drop transitional dummy package `mariadb-server-10.5`
* Make mariadb-test-run logs more informative to make debugging failures
in Debian/Ubuntu build and autopkgtest logs easier
* Remove override for test 'main.mysql-interactive' and extensively document
and ensure all the mariadb-test-run skip lists are current
* Add tentative upstream patch to fix main.mysqld--help-aria test failure
* Add upstream patch to fix test innodb_log_file_size failures
* Add upstream patch to fix test innodb.log_corruption_recovery failures
* Add patch to fix Spider test failures in networkless environments
Otto Kekalainen [Sun, 30 Jun 2024 15:18:06 +0000 (15:18 +0000)]
Disable the 'mysql*' command deprecation warning
Many command-line tools expect the commands they run to return without
any output in stderr or having error codes. The fact that now in MariaDB
11.4 all 'mysql*' commands emit a deprecation warning causes a lot of
scripts to fail, such as the /etc/init.d/mariadb itself and many dependent
programs as witnessed via Debian autopkgtests. See examples below.
Otto Kekalainen [Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)]
Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.
Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 17
Server version: 11.8.1-MariaDB-5 from Debian -- Please help get to 10k stars at https://github.com/MariaDB/Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Server output:
[Note] Please help get to 10k stars at https://github.com/MariaDB/Server
Server output if built in git directory:
[Note] Starting MariaDB 11.8.1-MariaDB-5 from Debian source revision 1a9c3debfd6b1b16af4e501d3530b866b85c38a8 server_uid eNAjF8/wvUNM09/mSmh+k3a5o5w= as process 1359
Logs will also show as server output:
mysqld: Version: '11.8.1-MariaDB-5 from Debian' socket: '/run/mysqld/mysqld.sock' port: 3306 -- Please help get to 10k stars at https://github.com/MariaDB/Server
Daniel Black [Mon, 29 Jan 2024 03:51:30 +0000 (19:51 -0800)]
mariadb: FTBFS on hurd-i386: undefined reference to misc functions and files requires https://github.com/MariaDB/server/pull/2893 as debian explicit architectures aren't needed since dh_auto_configure handles this.
If it works, upstream welcome.
Hurd string from uname -m, "SYSTEM processor: i686-AT386" in mariadb
output. And wiki reference https://en.wikipedia.org/wiki/Uname
Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1006531
Forwarded: no
Upstream will never accept this patch,
see https://github.com/MariaDB/server/pull/1718
Origin: https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch
Forwarded: https://github.com/MariaDB/server/pull/1718 (rejected, will never be merged)